#### 9.3.1 Options

The following options control the type of CPU for which code is assembled, and generic constraints on the code generated:

`-mcpu=`cpu
  Set architecture type and register usage for cpu. There are also shortcut alias options available for backward compatibility and convenience. Supported values for cpu are
  `arc600`
    Assemble for ARC 600. Aliases: `-mA6`, `-mARC600`.
  `arc601`
    Assemble for ARC 601. Alias: `-mARC601`.
  `arc700`
    Assemble for ARC 700. Aliases: `-mA7`, `-mARC700`.
  `arcem`
    Assemble for ARC EM. Aliases: `-mEM`
  `archs`
    Assemble for ARC HS. Aliases: `-mHS`, `-mav2hs`.

  Note: the `.cpu` directive can to be used to select a core variant from within assembly code.

`-EB`
  This option specifies that the output generated by the assembler should be marked as being encoded for a big-endian processor.

`-EL`
  This option specifies that the output generated by the assembler should be marked as being encoded for a little-endian processor - this is the default.

`-mcode-density`
  This option turns on Code Density instructions. Only valid for ARC EM processors.